{{tag>récupérer système sauvegarde}}

----

VOILA VOILA
===== Préparation du système =====



<note help>Il serait bon d'en dire un peu plus ou de ne rien DIRE.....</note>


=====Utilisation=====


 ====Utiliser un fichier log====

Il est vivement conseillé d'utiliser un fichier de log, soit pour pouvoir l'exploiter ultérieurement et analyser l'état matériel du disque, soit pour pouvoir interrompre puis reprendre une récupération.

  sudo ddrescue <nom_fichier_source> <nom_fichier_cible> <chemin_fichier_log>
  
 Avec:\\
<chemin_fichier_log> = chemin absolu ou relatif vers l'endroit où vous désirez enregistrer le log. Attention, il peut atteindre une taille conséquente pour une récup d'un support très endommagé.

(on peut avoir un exemple? Pour les novices c'est très abstrait)

====Support endommagé====

Si vous savez que votre support est fortement endommagé, considérez avant tout l'option de faire appel à un professionnel. Le taux de réussite d'une récupération sur support très malade est très supérieur lors de la première tentative. Si vous avez des données vitales, réfléchissez à deux fois avant de vouloir agir seul.

ddrescue intègre un certain nombre d'options intéressantes pour traiter des cas de supports partiellement endommagés, dont "l'état de santé est stable". Les principales sont citées ci-dessous, mais il y en a d'autres à envisager, consultez le man avant d'agir :

=== Option -n ===

 sudo ddrescue <source> <cible> <log> -n

permet de s'occuper en priorité des zones non endommagées et de revenir traiter celles-ci après.

=== Option -T ===

 sudo ddrescue <source> <cible> <log> -T

permet de reprendre une copie qui a été interrompue du fait de la disparition du matériel (déconnexion brutale, matériel instable qui "disparaît"). En fait, reprend toutes les zones qui n'ont pas encore été explorées.
Dans le cas général, pour interrompre une copie il faut utiliser Ctrl+C et reprendre avec la même ligne que celle utilisée pour lancer la première copie, avec le fichier de log bien sûr.

=== Option -r ===

 sudo ddrescue <source> <cible> <log> -r1

Reprend la copie en se concentrant sur les zones considérées comme erronées en première lecture : le chiffre derrière r est un paramètre qui spécifie combien de tentative d'accès doivent être effectuées à chaque erreur rencontrée.    

=== Option -S ===
`--sparse'
 
Use sparse writes for **output file**. (The blocks of zeros are not actually allocated on disc). May save a lot of disc space in some cases. Not all systems support this.
     

==== Connaître les fichiers stockés dans une partition EXT4 impactés par les blocs défectueux. ====
Le fichier **badblocs** qui a été généré contient les adresses des blocs illisibles par rapport au début soit du disque soit de la partition.
Il est intéressant de connaître préventivement les fichiers qui vont être perturbés.
Nous avons vu que le produit **DDR_UTILS** le fait.    Mais il n'est pas facile à installer me semble-t-il!
Il existe quelques solutions avec des  outils. Pas de chance, ils vont dépendre de la nature des partitions.  Ce n'est pas le même outil à utiliser pour les  partitions NTFS,   FAT,  EXTn, RAIDS, BTRFS   etc...... voici au moins un exemple pour le type de partition EXT4 assez répandu chez les particuliers.

a) Le fichier badblocs a été généré   par une duplication de la partition.   Les adresses indiquées font directement référence à la partition.  Il est donc possible d'utiliser  par exemple les commandes suivantes pour obtenir la liste des fichiers.   C'est toujours un exemple. Il faut donc mettre le bon nom de la partition. 
  * ### Ajouter la commande testb
  * sed 's|^|testb |' sdb2.badblocks > sdb2.testb.in
  * sudo debugfs  -f sdb2.testb.in  /dev/sda16 > sdb2.testb.out
  * ### Mettre la commande icheck
  * grep "marked in use" sdb2.testb.out | cut -d  ' ' -f 2 | sed 's|^|icheck |' > sdb2.icheck.in
  * sudo debugfs   -f sdb2.icheck.in  /dev/sdb2 > sdb2.icheck.out
  * ### Ajout de la commande inode
  * sed '/ck/d' sdb2.icheck.out | cut -d  $'\t' -f 2 | sed 's|^|ncheck |' > sdb2.ncheck.in
  * sudo debugfs   -f sdb2.ncheck.in  /dev/sdb2 > sdb2.ncheck.out
  * ### Sélection des fichiers
  * grep "/" sdb2.ncheck.out | cut -d  $'\t' -f 2 | sort | uniq >sdb2.files
  * cat sdb2.files
  * wc sdb2.files

===== Pour continuer la récupération avec d'autres outils =====

Une fois les données récupérées depuis le ou les supports endommagés, il est conseillé de faire une copie de la récupération et de travailler sur cette copie. Les outils suivants peuvent vous être utiles :

  * [[dd]] pour faire la copie de travail ;
  * [[kpartx]] pour monter une partition de l'image d'un disque comprenant plusieurs partitions ;
  * [[fsck]] pour réparer le système de fichier ;
  * [[testdisk]] pour récupérer des partitions disparues ;
  * [[photorec]] pour récupérer les fichiers qui n'apparaissent plus dans le système de fichiers ;
  * [[mount]] et [[umount]] pour accéder au contenu des partitions ;
  * [[convmv]] pour convertir les noms de fichiers en UTF8 ;


===== Désinstallation =====

Pour supprimer ddrescue, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer le paquet]] **gddrescue**.

===== Voir aussi =====

  * [[http://forum.ubuntu-fr.org/viewtopic.php?id=92840&p=1|Discussion « Bilan : comment récupérer des données perdues » sur le forum Ubuntu-fr]], très utile pour la récupération de données sur un disque dur endommagé
  * [[http://forum.ubuntu-fr.org/viewtopic.php?id=447877|Discussion « Topic unique récupération de données » sur le forum Ubuntu-fr]], à consulter pour y soumettre votre cas et trouver de l'aide
  * [[http://linuxfr.org/news/ddrescue-dd_rescue-myrescue-recuperer-ses-donnees-apres-un-crash-disque]], autre cas, plus récent, de récupération de données
  * **(en)** [[http://www.gnu.org/software/ddrescue/ddrescue.html|page officielle de GNU ddrescue]]
  * **(en)** [[http://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html|Aide en ligne de GNU ddrescue]]
  * [[safecopy]] Limite les Erreur I/O
  * Identifier le fichier utilisant le [[https://www.vincentliefooghe.net/content/linux-corriger-des-secteurs-d%C3%A9fecteux-sur-un-disque|bloc défectueux]]

----
//Contributeurs principaux : ...//

//basé sur [[http://www.gnu.org/software/ddrescue/ddrescue.html|la page officielle]].//